package Tathy;

import java.awt.Graphics;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.awt.image.BufferedImage;
import java.io.IOException;

import javax.imageio.ImageIO;

import GameEngine.GameEngine;
import GameEngine.GameObject2D;

public class Mapa extends GameObject2D {
  BufferedImage chao;
  int px =64;
  public int posChaoX, posChaoY =0;
  int posLH,posLH1 =px,posLH2 = posLH1+px,posLH3=posLH2+px,posLH4=posLH3+px,posLH5=posLH4+px,posLH6=posLH5+px,
  posLH7=posLH6+px,posLH8=posLH7+px,posLH9=posLH8+px,posLH10=posLH9+px,posLH11=posLH10+px,
  posLH12=posLH11+px,posLH13=posLH12+px,posLH14=posLH13+px,posLH15=posLH14+px,posLH16=posLH15+px,posLH17=posLH16+px,
  posLH18=posLH17+px,posLH19=posLH18+px,posLH20=posLH19+px,posLH21=posLH20+px,posLH22=posLH21+px,posLH23=posLH22+px,
  posLH24=posLH23+px,posLH25=posLH24+px,posLH26=posLH25+px,posLH27=posLH26+px,posLH28=posLH27+px,posLH29=posLH28+px,
  posLH30=posLH29+px,posLH31=posLH30+px,posLH32=posLH31+px;

  int posLV, posLV1 =px,posLV2 = posLV1+px,posLV3=posLV2+px,posLV4=posLV3+px,posLV5=posLV4+px,posLV6=posLV5+px,
  posLV7=posLV6+px,posLV8=posLV7+px,posLV9=posLV8+px,posLV10=posLV9+px,posLV11=posLV10+px,
  posLV12=posLV11+px,posLV13=posLV12+px,posLV14=posLV13+px,posLV15=posLV14+px,posLV16=posLV15+px,posLV17=posLV16+px,
  posLV18=posLV17+px,posLV19=posLV18+px,posLV20=posLV19+px,posLV21=posLV20+px,posLV22=posLV21+px,posLV23=posLV22+px,
  posLV24=posLV23+px,posLV25=posLV24+px,posLV26=posLV25+px,posLV27=posLV26+px,posLV28=posLV27+px,posLV29=posLV28+px,
  posLV30=posLV29+px,posLV31=posLV30+px,posLV32=posLV31+px;
	public Mapa() {
		super("");
		try{
			//tathy = ImageIO.read(getClass().getResource("tathy2.png"));
			//tathy = ImageIO.read(getClass().getResource("ozzy.png"));
			//magia1 = ImageIO.read(getClass().getResource("M1.gif"));
			chao = ImageIO.read(getClass().getResource("chao.jpg"));
		}catch (IOException e) {
			e.printStackTrace();
		}
	}

	@Override
	public void paint(Graphics g) {
		//horizontal
		
		g.drawLine(1000, posLH1, 0, posLH1);
		g.drawLine(1000, posLH2, 0, posLH2);
		g.drawLine(1000, posLH3, 0, posLH3);
		g.drawLine(1000, posLH4, 0, posLH4);
		g.drawLine(1000, posLH5, 0, posLH5);
		g.drawLine(1000, posLH6, 0, posLH6);
		g.drawLine(1000, posLH7, 0, posLH7);
		g.drawLine(1000, posLH8, 0, posLH8);
		g.drawLine(1000, posLH9, 0, posLH9);
		g.drawLine(1000, posLH10, 0, posLH10);
		g.drawLine(1000, posLH11, 0, posLH11);
		g.drawLine(1000, posLH12, 0, posLH12);
		g.drawLine(1000, posLH13, 0, posLH13);
		g.drawLine(1000, posLH14, 0, posLH14);
		g.drawLine(1000, posLH15, 0, posLH15);
		g.drawLine(1000, posLH16, 0, posLH16);
		g.drawLine(1000, posLH17, 0, posLH17);
		g.drawLine(1000, posLH18, 0, posLH18);
		g.drawLine(1000, posLH19, 0, posLH19);
		g.drawLine(1000, posLH20, 0, posLH20);
		g.drawLine(1000, posLH21, 0, posLH21);
		g.drawLine(1000, posLH22, 0, posLH22);
		g.drawLine(1000, posLH23, 0, posLH23);
		g.drawLine(1000, posLH24, 0, posLH24);
		g.drawLine(1000, posLH25, 0, posLH25);
		g.drawLine(1000, posLH26, 0, posLH26);
		g.drawLine(1000, posLH27, 0, posLH27);
		g.drawLine(1000, posLH28, 0, posLH28);
		g.drawLine(1000, posLH29, 0, posLH29);
		g.drawLine(1000, posLH30, 0, posLH30);
		g.drawLine(1000, posLH31, 0, posLH31);
		g.drawLine(1000, posLH32, 0, posLH32);
		
		
		//vertical
		g.drawLine(posLV1, 1000, posLV1, 0);
		g.drawLine(posLV2, 1000, posLV2, 0);
		g.drawLine(posLV3, 1000, posLV3, 0);
		g.drawLine(posLV4, 1000, posLV4, 0);
		g.drawLine(posLV5, 1000, posLV5, 0);
		g.drawLine(posLV6, 1000, posLV6, 0);
		g.drawLine(posLV7, 1000, posLV7, 0);
		g.drawLine(posLV8, 1000, posLV8, 0);
		g.drawLine(posLV9, 1000, posLV9, 0);
		g.drawLine(posLV10, 1000, posLV10, 0);
		g.drawLine(posLV11, 1000, posLV11, 0);
		g.drawLine(posLV12, 1000, posLV12, 0);
		g.drawLine(posLV13, 1000, posLV13, 0);
		g.drawLine(posLV14, 1000, posLV14, 0);
		g.drawLine(posLV15, 1000, posLV15, 0);
		g.drawLine(posLV16, 1000, posLV16, 0);
		g.drawLine(posLV17, 1000, posLV17, 0);
		g.drawLine(posLV18, 1000, posLV18, 0);
		g.drawLine(posLV19, 1000, posLV19, 0);
		g.drawLine(posLV20, 1000, posLV20, 0);
		g.drawLine(posLV21, 1000, posLV21, 0);
		g.drawLine(posLV22, 1000, posLV22, 0);
		g.drawLine(posLV23, 1000, posLV23, 0);
		g.drawLine(posLV24, 1000, posLV24, 0);
		g.drawLine(posLV25, 1000, posLV25, 0);
		g.drawLine(posLV26, 1000, posLV26, 0);
		g.drawLine(posLV27, 1000, posLV27, 0);
		g.drawLine(posLV28, 1000, posLV28, 0);
		g.drawLine(posLV29, 1000, posLV29, 0);
		g.drawLine(posLV30, 1000, posLV30, 0);
		g.drawLine(posLV31, 1000, posLV31, 0);
		g.drawLine(posLV32, 1000, posLV32, 0);
		//objetos
		g.drawImage(chao, posLV, posLH, null);
		g.drawImage(chao, posLV1, posLH, null);
		g.drawImage(chao, posLV2, posLH, null);
		g.drawImage(chao, posLV3, posLH, null);
		g.drawImage(chao, posLV4, posLH, null);
		g.drawImage(chao, posLV5, posLH, null);
		g.drawImage(chao, posLV6, posLH, null);
		g.drawImage(chao, posLV17, posLH17, null);
		
		
	}

	@Override
	public void updateKeyEvent(KeyEvent keyevent) {
		if(GameEngine.leftKeyPressed && posLV1<=px){
			posLV++;
			posLV1++;
			posLV2++;
			posLV3++;
			posLV4++;
			posLV5++;
			posLV6++;
			posLV7++;
			posLV8++;
			posLV9++;
			posLV10++;
			posLV11++;
			posLV12++;
			posLV13++;
			posLV14++;
			posLV15++;
			posLV16++;
			posLV17++;
			posLV18++;
			posLV19++;
			posLV20++;
			posLV21++;
			posLV22++;
			posLV23++;
			posLV24++;
			posLV25++;
			posLV26++;
			posLV27++;
			posLV28++;
			posLV29++;
			posLV30++;
			posLV31++;
			posLV32++;
			
		}
		if(GameEngine.rightKeyPressed){
			posLV--;
			posLV1--;
			posLV2--;
			posLV3--;
			posLV4--;
			posLV5--;
			posLV6--;
			posLV7--;
			posLV8--;
			posLV9--;
			posLV10--;
			posLV11--;
			posLV12--;
			posLV13--;
			posLV14--;
			posLV15--;
			posLV16--;
			posLV17--;
			posLV18--;
			posLV19--;
			posLV20--;
			posLV21--;
			posLV22--;
			posLV23--;
			posLV24--;
			posLV25--;
			posLV26--;
			posLV27--;
			posLV28--;
			posLV29--;
			posLV30--;
			posLV31--;
			posLV32--;
		
		}
		if(GameEngine.upKeyPressed && posLH1<=px){
			posLH++;
			posLH1++;
			posLH2++;
			posLH3++;
			posLH4++;
			posLH5++;
			posLH6++;
			posLH7++;
			posLH8++;
			posLH9++;
			posLH10++;
			posLH11++;
			posLH12++;
			posLH13++;
			posLH14++;
			posLH15++;
			posLH16++;
			posLH17++;
			posLH18++;
			posLH19++;
			posLH20++;
			posLV21++;
			posLH22++;
			posLH23++;
			posLH24++;
			posLH25++;
			posLH26++;
			posLH27++;
			posLH28++;
			posLH29++;
			posLH30++;
			posLH31++;
			posLH32++;
			
		}
		if(GameEngine.downKeyPressed){
			posLH--;
			posLH1--;
			posLH2--;
			posLH3--;
			posLH4--;
			posLH5--;
			posLH6--;
			posLH7--;
			posLH8--;
			posLH9--;
			posLH10--;
			posLH11--;
			posLH12--;
			posLH13--;
			posLH14--;
			posLH15--;
			posLH16--;
			posLH17--;
			posLH18--;
			posLH19--;
			posLH20--;
			posLH21--;
			posLH22--;
			posLH23--;
			posLH24--;
			posLH25--;
			posLH26--;
			posLH27--;
			posLH28--;
			posLH29--;
			posLH30--;
			posLH31--;
			posLH32--;
		
		}
	}

	@Override
	public void updateMouseEvent(MouseEvent mouseevent) {
		// TODO Auto-generated method stub
		
	}

}
